Learn R Programming

bnlearn (version 4.1.1)

graph utilities: Utilities to manipulate graphs

Description

Check and manipulate graph-related properties of an object of class bn.

Usage

# check whether the graph is acyclic/completely directed.
acyclic(x, directed = FALSE, debug = FALSE)
directed(x)
# check whether there is a path between two nodes.
path(x, from, to, direct = TRUE, underlying.graph = FALSE, debug = FALSE)
# build the skeleton or a complete orientation of the graph.
skeleton(x)
pdag2dag(x, ordering)
# build a subgraph spanning a subset of nodes.
subgraph(x, nodes)

Arguments

x

an object of class bn. acyclic, directed and path also accept objects of class bn.fit.

from

a character string, the label of a node.

to

a character string, the label of a node (different from from).

direct

a boolean value. If FALSE ignore any arc between from and to when looking for a path.

underlying.graph

a boolean value. If TRUE the underlying undirected graph is used instead of the (directed) one from the x argument.

ordering

the labels of all the nodes in the graph; their order is the node ordering used to set the direction of undirected arcs.

nodes

the labels of the nodes that induce the subgraph.

directed

a boolean value. If TRUE only completely directed cycles are considered; otherwise undirected arcs will also be considered and treated as arcs present in both directions.

debug

a boolean value. If TRUE a lot of debugging output is printed; otherwise the function is completely silent.

Value

acyclic, path and directed return a boolean value. skeleton, pdag2dag and subgraph return an object of class bn.

References

Bang-Jensen J, Gutin G (2009). Digraphs: Theory, Algorithms and Applications. Springer, 2nd edition.

Examples

Run this code
data(learning.test)
res = gs(learning.test)

acyclic(res)
directed(res)
res = pdag2dag(res, ordering = LETTERS[1:6])
res
directed(res)
skeleton(res)

Run the code above in your browser using DataLab